1. Field of the Invention
The inventions relates to oscillators for use in music synthesizers, and comprises an oscillator providing a smooth waveform rich in harmonic content whose shape is continuously and dynamically variable over a wide range of harmonically rich shapes.
2. Background Information
Oscillators play a central role in music synthesis. In general, they provide a basic waveshape, or components or prototypes of a desired waveshape, which are then further processed to achieve the desired shape. For example, in additive (Fourier) synthesis, oscillators are commonly used to generate the constituents of a wave which, when added together, produce the desired waveshape. In subtractive synthesis, oscillators provide a prototype or basic wave which is then further processed, e.g., by filtering and the like to remove some constituents and enhance others, to thereby form the desired waveshape.
Sawtooth waveforms provide a rich source of signals for creation of electronic music by means of subtractive synthesis techniques. Such signals can be generated digitally by repeatedly adding a phase increment to an accumulator at the frequency of the sawtooth to be generated. Sawtooth waves are rich in harmonic content, which makes them especially desirable for subtractive synthesis. However, because of this content, they pose significant problems with respect to the creation of undesired alias images, and significant filtering is often required to prevent this aliasing. Filtering is expensive in digital circuitry in terms of both processing power and processing time required for effective filtering, and this restricts the capabilities otherwise provided by sawtooth wave generation. See, e.g., U.S. Pat. No. 5,194,684, xe2x80x9cMethod and Apparatus For Selective Reduction of Upper Harmonic Content In Digital Synthesizer Excitation Signalsxe2x80x9d, issued May 16, 1993 to the International Business Machines Corporation.
Wavetable (phase increment or phase accumulator) oscillators are frequently used to generate waveshapes of desired form and frequency. In such oscillators, the amplitude coefficients of a single cycle of a basic waveshape are stored in a random access memory, and are read out of the memory at a rate dependent of the desired frequency or pitch of the note to be played. The stored waveshape may itself represent the ultimate waveshape to be reproduced, or may serve as a prototype for the formation of the ultimate (desired) waveshape by means of further signal processing operations on the stored waveshape.
Thus, U.S. Pat. No. 5,644,098, xe2x80x9cTone Signal Generator For Producing Multioperator Tone Signals, issued Jul. 1, 1997, and U.S. Pat. No. 5,665,929, xe2x80x9cTone Signal Generator For Producing Multioperator Tone Signals Using An Operator Circuit Including A Waveform Generator, A Selector And An Enveloperxe2x80x9d, issued Sep. 9, 1997, both to Crystal Semiconductor Corporation, describe waveform generators formed from a plurality of wavetables storing predefined shapes. Table selectors and waveshaping circuits operate on the wavetable outputs to provide a variety of signal shapes. Similarly, U.S. Pat. No. 5,604,323, xe2x80x9cMusical Tone Electronic Synthesizer And Methodxe2x80x9d, issued Feb. 18, 1997 to Ethymonics Ltd., describes a waveform generator formed from a plurality of wavetables, with at least a portion of the output of one wavetable being applied as a modulating input to another.
When using wavetable oscillators, it is generally necessary, or at least desirable, to further process the wavetable output even when the ultimate, desired shape is provided as output from the table, in order to introduce a variability and thus a richness to the sound. Thus, U.S. Pat. No. 5,541,354, xe2x80x9cMicromanipulation of Waveforms In A Sampling Music Synthesizerxe2x80x9d, issued Jul. 30, 1996 to the International Business machines Corporation, describes a sample-based synthesizer in which the sound of a plurality of a given instruments is generated by applying a common sequence of sound samples of that instrument to a corresponding plurality of processors which introduce small-scale variations in amplitude or pitch to the samples so as to more realistically simulate a chorus of actual musical instruments.
While extremely useful, wavetables consume substantial memory. Although this is less of a problem now than formerly in light of the decreasing costs of memory, it still places basic limitations on the number of independent waveshapes that can practically be stored in memory on a given synthesizer. Thus, computational oscillators are often found to be desirable for creating various waveshapes, particularly those which are to serve as a basic or prototype wave that is to be further processed. These oscillators directly compute the waveform amplitude at each of a number of points (which may be thought of as instants in time), to thereby define the waveshape.
In employing computational oscillators, it is important that the oscillator operate efficiently. Despite significant increases in computing power with time, there is always more that is sought to be done in music synthesis than there is time to do it from a computational viewpoint, and thus oscillator efficiency may determinative of its usability in a particular instrument. Further, it is desirable that the oscillator provide a variety of waveshapes, and that these waveshapes offer a rich harmonic content.
In accordance with the present invention, we provide a computational oscillator that efficiently generates a variety of harmonically rich, dynamically variable waveshapes. Further, the waveshapes produced by the oscillator are smooth, i.e., have continuous first derivatives at each point. This is extremely valuable in music synthesis, and enables subsequent processing of the basic waveshapes without the introduction of aliasing which commonly results subsequent from subsequent signal processing operations such as multiplication. Such aliasing is generally audible to the listener, unless specific steps are taken to avoid it. For example, filtering can reduce or remove many non-linearities. However, such additional processing consumes additional time and system resources, and it is highly desirable to avoid it when possible, rather than attempt to compensate for it subsequently. Further, signals such as alias signals which are within the frequency band of interest cannot be removed without also removing signal desired components.
In addition to providing rich, continuous waveshapes, the oscillator of the present invention is dynamically variable under control of the user. Thus, during performance, the user not only can select among a wide variety of waveshapes, but can quickly vary the selection, and can further transition smoothly among them.